.timeline {
  width: 100%;

  :global {
    .timeline {
      padding: 0;
      position: relative;
      list-style: none;
      font-family: PingFangSC-light, Avenir, Helvetica, Arial, Hiragino Sans GB, Microsoft YaHei, sans-serif;
      -webkit-font-smoothing: antialiased;
      margin: 10px 20px;
    }

    //   .timeline:after {
    //     position: absolute;
    //     content: '';
    //     left: 0;
    //     top: 0;
    //     width: 1px;
    //     height: 100%;
    //     background-color: var(--timelineTheme);
    //   }
    .timeline-item {
      position: relative;
      margin: 0 0 0 28px;
      min-height: 75px;
      padding: 12px 0;

      .content {
        padding: 14px 16px;
        min-height: 50px;
        border: 1px solid #ffffff;
      }

      &.finish {
        &:before {
          background-color: rgb(9, 117, 225);
        }

        &:after {
          background-color: rgb(9, 117, 225);
        }
      }

      &.active {
        &:before {
          background-color: rgb(9, 117, 225);
        }
      }

      &:before {
        position: absolute;
        content: '';
        left: -28px;
        top: 0;
        width: 1px;
        height: 40%;
        background-color: #E4E4E4;
        background-color: var(--timelineTheme);
      }

      &:after {
        position: absolute;
        content: '';
        left: -28px;
        bottom: 0;
        width: 1px;
        height: 60%;
        background-color: #E4E4E4;
        background-color: var(--timelineTheme);
      }

      &:last-child {

        // border-bottom: none;
        &:after {
          position: absolute;
          content: '';
          left: -28px;
          top: -50%;
          width: 1px;
          height: 0;
          background-color: #E4E4E4;
          background-color: var(--timelineTheme);
        }
      }

      &:first-child {
        &:before {
          position: absolute;
          content: '';
          left: -28px;
          top: 50%;
          width: 1px;
          height: 0;
          background-color: rgb(9, 117, 225);
        }
      }
    }

    .timeline-circle {
      position: absolute;
      top: 40%;
      left: -31px;
      width: 5px;
      height: 5px;
      border-radius: 100%;

      border: 1px solid #E4E4E4;
      background-color: #E4E4E4;
      border: 1px solid var(--timelineTheme);
      background-color: var(--timelineTheme);
      z-index: 1;
      box-sizing: content-box;
    }

    .timeline-circle.hollow {
      background-color: #ffffff;
      background-color: var(--timelineBg);
    }

    .timeline-title {
      position: relative;
      display: inline-block;
      /**
             * BFC inline-block 元素与其兄弟元素、子元素和父元素的外边距都不会折叠（包括其父元素和子元素）
             */
      cursor: crosshair;
      margin: -.15em 0 15px 28px
    }

    .timeline-title:not(:first-child) {
      margin-top: 28px;
    }

    .timeline-title-circle {
      left: -36px;
      top: .15em;
      width: 16px;
      height: 16px;
    }

    .timeline-others {
      width: 40px;
      height: auto;
      top: .2em;
      left: -48px;
      line-height: 1;
      padding: 2px 0;
      text-align: center;
      border: none;
      background-color: #ffffff;
      background-color: var(--timelineBg);
    }
  }
}